
package com.cctv.ppm.schema.ppm_commondatatypes._0;

import java.math.BigInteger;
import javax.xml.bind.JAXBElement;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementRef;
import javax.xml.bind.annotation.XmlSchemaType;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.bind.annotation.XmlType;


/**
 * 广告节目单
 * 
 * <p>AdProgBcastSchType complex type的 Java 类。
 * 
 * <p>以下模式片段指定包含在此类中的预期内容。
 * 
 * <pre>
 * &lt;complexType name="AdProgBcastSchType"&gt;
 *   &lt;complexContent&gt;
 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
 *       &lt;sequence&gt;
 *         &lt;element name="BroadcastListItemID" type="{http://cctv.com/PPM/schema/PPM_CommonDataTypes/0.1}BroadcastListItemIDType"/&gt;
 *         &lt;element name="AdPlaySequence" type="{http://www.w3.org/2001/XMLSchema}positiveInteger"/&gt;
 *         &lt;element name="AssetID" type="{http://cctv.com/PPM/schema/PPM_CommonDataTypes/0.1}AdAssetIDType"/&gt;
 *         &lt;element name="MaterialID" type="{http://cctv.com/PPM/schema/PPM_CommonDataTypes/0.1}MaterialIDType"/&gt;
 *         &lt;element name="MaterialName" type="{http://cctv.com/PPM/schema/PPM_CommonDataTypes/0.1}MaterialNameType"/&gt;
 *         &lt;element name="PlayDuration" type="{http://cctv.com/PPM/schema/PPM_CommonDataTypes/0.1}DurationType"/&gt;
 *         &lt;element name="PlayTimeStart" type="{http://cctv.com/PPM/schema/PPM_CommonDataTypes/0.1}PlayTimeType" minOccurs="0"/&gt;
 *         &lt;element name="ADProgramCode" type="{http://cctv.com/PPM/schema/PPM_CommonDataTypes/0.1}ADProgramCodeType"/&gt;
 *         &lt;element name="ADProgramName" type="{http://cctv.com/PPM/schema/PPM_CommonDataTypes/0.1}ADProgramNameType"/&gt;
 *         &lt;element name="ColumnCode" type="{http://cctv.com/PPM/schema/PPM_CommonDataTypes/0.1}ColumnCodeType"/&gt;
 *         &lt;element name="ColumnName" type="{http://cctv.com/PPM/schema/PPM_CommonDataTypes/0.1}ColumnNameType"/&gt;
 *         &lt;element name="AdMaterialDestination" type="{http://cctv.com/PPM/schema/PPM_CommonDataTypes/0.1}AdMaterialDestinationType" minOccurs="0"/&gt;
 *         &lt;element name="AFD" type="{http://cctv.com/PPM/schema/PPM_CommonDataTypes/0.1}AFDType"/&gt;
 *         &lt;element name="Video" type="{http://cctv.com/PPM/schema/PPM_CommonDataTypes/0.1}VideoType"/&gt;
 *         &lt;element name="Audio" type="{http://cctv.com/PPM/schema/PPM_CommonDataTypes/0.1}AudioType"/&gt;
 *         &lt;element name="AudioLanguage" type="{http://cctv.com/PPM/schema/PPM_CommonDataTypes/0.1}LanguageType"/&gt;
 *         &lt;element name="SubtitleLanguage" type="{http://cctv.com/PPM/schema/PPM_CommonDataTypes/0.1}LanguageType"/&gt;
 *         &lt;element name="ItemType" type="{http://cctv.com/PPM/schema/PPM_CommonDataTypes/0.1}AdBroadcastScheduleType"/&gt;
 *         &lt;element name="AdSegmentID" type="{http://cctv.com/PPM/schema/PPM_CommonDataTypes/0.1}AdSegmentIDType"/&gt;
 *       &lt;/sequence&gt;
 *     &lt;/restriction&gt;
 *   &lt;/complexContent&gt;
 * &lt;/complexType&gt;
 * </pre>
 * 
 * 
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "AdProgBcastSchType", propOrder = {
    "broadcastListItemID",
    "adPlaySequence",
    "assetID",
    "materialID",
    "materialName",
    "playDuration",
    "playTimeStart",
    "adProgramCode",
    "adProgramName",
    "columnCode",
    "columnName",
    "adMaterialDestination",
    "afd",
    "video",
    "audio",
    "audioLanguage",
    "subtitleLanguage",
    "itemType",
    "adSegmentID"
})
@XmlSeeAlso({
    AdProgBcastResultType.class
})
public class AdProgBcastSchType {

    @XmlElement(name = "BroadcastListItemID", required = true)
    protected String broadcastListItemID;
    @XmlElement(name = "AdPlaySequence", required = true)
    @XmlSchemaType(name = "positiveInteger")
    protected BigInteger adPlaySequence;
    @XmlElement(name = "AssetID", required = true)
    protected String assetID;
    @XmlElement(name = "MaterialID", required = true)
    protected String materialID;
    @XmlElement(name = "MaterialName", required = true)
    protected String materialName;
    @XmlElement(name = "PlayDuration", required = true)
    protected String playDuration;
    @XmlElement(name = "PlayTimeStart")
    protected String playTimeStart;
    @XmlElement(name = "ADProgramCode", required = true)
    protected String adProgramCode;
    @XmlElement(name = "ADProgramName", required = true)
    protected String adProgramName;
    @XmlElement(name = "ColumnCode", required = true)
    protected String columnCode;
    @XmlElement(name = "ColumnName", required = true)
    protected String columnName;
    @XmlElementRef(name = "AdMaterialDestination", namespace = "http://cctv.com/PPM/schema/PPM_CommonDataTypes/0.1", type = JAXBElement.class, required = false)
    protected JAXBElement<String> adMaterialDestination;
    @XmlElement(name = "AFD", required = true)
    protected String afd;
    @XmlElement(name = "Video", required = true)
    protected String video;
    @XmlElement(name = "Audio", required = true)
    protected String audio;
    @XmlElement(name = "AudioLanguage", required = true)
    protected LanguageType audioLanguage;
    @XmlElement(name = "SubtitleLanguage", required = true)
    protected LanguageType subtitleLanguage;
    @XmlElement(name = "ItemType", required = true)
    protected String itemType;
    @XmlElement(name = "AdSegmentID", required = true)
    protected String adSegmentID;

    /**
     * 获取broadcastListItemID属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getBroadcastListItemID() {
        return broadcastListItemID;
    }

    /**
     * 设置broadcastListItemID属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setBroadcastListItemID(String value) {
        this.broadcastListItemID = value;
    }

    /**
     * 获取adPlaySequence属性的值。
     * 
     * @return
     *     possible object is
     *     {@link BigInteger }
     *     
     */
    public BigInteger getAdPlaySequence() {
        return adPlaySequence;
    }

    /**
     * 设置adPlaySequence属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link BigInteger }
     *     
     */
    public void setAdPlaySequence(BigInteger value) {
        this.adPlaySequence = value;
    }

    /**
     * 获取assetID属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getAssetID() {
        return assetID;
    }

    /**
     * 设置assetID属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setAssetID(String value) {
        this.assetID = value;
    }

    /**
     * 获取materialID属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getMaterialID() {
        return materialID;
    }

    /**
     * 设置materialID属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setMaterialID(String value) {
        this.materialID = value;
    }

    /**
     * 获取materialName属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getMaterialName() {
        return materialName;
    }

    /**
     * 设置materialName属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setMaterialName(String value) {
        this.materialName = value;
    }

    /**
     * 获取playDuration属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getPlayDuration() {
        return playDuration;
    }

    /**
     * 设置playDuration属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setPlayDuration(String value) {
        this.playDuration = value;
    }

    /**
     * 获取playTimeStart属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getPlayTimeStart() {
        return playTimeStart;
    }

    /**
     * 设置playTimeStart属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setPlayTimeStart(String value) {
        this.playTimeStart = value;
    }

    /**
     * 获取adProgramCode属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getADProgramCode() {
        return adProgramCode;
    }

    /**
     * 设置adProgramCode属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setADProgramCode(String value) {
        this.adProgramCode = value;
    }

    /**
     * 获取adProgramName属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getADProgramName() {
        return adProgramName;
    }

    /**
     * 设置adProgramName属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setADProgramName(String value) {
        this.adProgramName = value;
    }

    /**
     * 获取columnCode属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getColumnCode() {
        return columnCode;
    }

    /**
     * 设置columnCode属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setColumnCode(String value) {
        this.columnCode = value;
    }

    /**
     * 获取columnName属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getColumnName() {
        return columnName;
    }

    /**
     * 设置columnName属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setColumnName(String value) {
        this.columnName = value;
    }

    /**
     * 获取adMaterialDestination属性的值。
     * 
     * @return
     *     possible object is
     *     {@link JAXBElement }{@code <}{@link String }{@code >}
     *     
     */
    public JAXBElement<String> getAdMaterialDestination() {
        return adMaterialDestination;
    }

    /**
     * 设置adMaterialDestination属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link JAXBElement }{@code <}{@link String }{@code >}
     *     
     */
    public void setAdMaterialDestination(JAXBElement<String> value) {
        this.adMaterialDestination = value;
    }

    /**
     * 获取afd属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getAFD() {
        return afd;
    }

    /**
     * 设置afd属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setAFD(String value) {
        this.afd = value;
    }

    /**
     * 获取video属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getVideo() {
        return video;
    }

    /**
     * 设置video属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setVideo(String value) {
        this.video = value;
    }

    /**
     * 获取audio属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getAudio() {
        return audio;
    }

    /**
     * 设置audio属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setAudio(String value) {
        this.audio = value;
    }

    /**
     * 获取audioLanguage属性的值。
     * 
     * @return
     *     possible object is
     *     {@link LanguageType }
     *     
     */
    public LanguageType getAudioLanguage() {
        return audioLanguage;
    }

    /**
     * 设置audioLanguage属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link LanguageType }
     *     
     */
    public void setAudioLanguage(LanguageType value) {
        this.audioLanguage = value;
    }

    /**
     * 获取subtitleLanguage属性的值。
     * 
     * @return
     *     possible object is
     *     {@link LanguageType }
     *     
     */
    public LanguageType getSubtitleLanguage() {
        return subtitleLanguage;
    }

    /**
     * 设置subtitleLanguage属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link LanguageType }
     *     
     */
    public void setSubtitleLanguage(LanguageType value) {
        this.subtitleLanguage = value;
    }

    /**
     * 获取itemType属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getItemType() {
        return itemType;
    }

    /**
     * 设置itemType属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setItemType(String value) {
        this.itemType = value;
    }

    /**
     * 获取adSegmentID属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getAdSegmentID() {
        return adSegmentID;
    }

    /**
     * 设置adSegmentID属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setAdSegmentID(String value) {
        this.adSegmentID = value;
    }

}
